const util = require('../../utils/util.js');

Page({
  /**
   * 页面的初始数据
   */
  data: {
    sexDemand: ["男","女"],sexDemandIndex:0,
    // username: '',
    // gender: '男'
    userInfo:'',
    user:{
      username:"",
      phoneNumber:"",
    }
  },

    //底部弹出 性别要求 选择器
    bindSexDemandPickerChange: function (e) {
      console.log(e);
      console.log('picker发送选择改变，携带值为', e.detail.value)
      this.setData({
        sexDemandIndex: e.detail.value,
        "user.gender":e.detail.value
      })
    },
    // 登录监听
    chooseAvatar(e) {
      console.log('选择头像被触发了'),
      wx.cloud.callFunction({
        name: 'getUsers',
        complete: res => {
          console.log('callFunction test result: ', res.result)
        }
      }),
      this.setData({
        login: {
          show: true,
          line:true,
          avatar: e.detail.avatarUrl,
        }
      })
    },
  
  // 在页面中选择文件并上传
  chooseAndUploadFile(e) {
    wx.chooseMedia({
      count: 1,  // 选择图片的数量，这里设置为1
      mediaType:'mix',
      maxDuration: 30,
      sizeType: ['original', 'compressed'],  // 原图或压缩图
      sourceType: ['album', 'camera'],  // 从相册或相机选择
      camera:['camera','front'],
      success: (res) => {
        const newMedia = {
          tempFilePath: res.tempFiles[0].tempFilePath
        };
        // 此处可以获取到信息
        console.log("路径为:",newMedia.tempFilePath);
        this.uploadFile(e,newMedia.tempFilePath);
      }
    });
  },
  // 调用后端接口上传文件
  uploadFile(e,filePath) {
    //1.获取全局URL
    util.setGlobalData(this);
    const globalUrl = this.data.globalUrl;
    console.log("123",globalUrl);
    //2.获取用户token
    const userInfo = wx.getStorageSync('UserData');
    console.log("用户token",userInfo.token)
    //3.显示上传提示
    wx.showLoading({ title: 'Uploading...' });
    // 调用后端上传文件接口
    wx.uploadFile({
      url: globalUrl+'/fileoss/upload', // 后端上传文件接口地址
      filePath: filePath, // 文件临时路径
      name: 'file', // 后端接收文件的参数名
      header: {
        "token": userInfo.token,
      },
      success: (res) => {
        console.log("返回的数据为：",res.data); // 打印后端返回的数据
        // 隐藏上传提示
        this.setData({
          "user.avatarImage": res.data,
          "userInfo.avatarImage": res.data
        })
        wx.hideLoading();
      },
      fail: (error) => {
        console.error(error);
        // 隐藏上传提示
        wx.hideLoading();
        // 处理上传失败的逻辑
        // ...
      }
    });
  },







  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // this.setData({
    //   //收到数据后使用decodeURIComponent()解码
    //   username: decodeURIComponent(options.username),
    //   gender: decodeURIComponent(options.gender)
    // })
    const user = wx.getStorageSync('user');
    console.log(user,"user")
    this.setData({
      userInfo: user,
      user: user
    })
  },
  // //保存按钮
  // formSubmit:function(e){
  //   //表单返回的所有数据
  //   var formData=e.detail.value;
  //   //获取上一个页面的对象
  //   var pages=getCurrentPages()
  //   var prevPage=pages[pages.length-2]
  //   //调用上一个页面的setData()方法，把数据存储到上一个页面中去
  //   prevPage.setData({
  //     username:formData.username,
  //     gender:formData.gender
  //   })
  //   //返回上一个页面
  //   wx.navigateBack()
  // },

  // 处理从 昵称界面返回的数据
  handleReturnName: function(data) {
    console.log("username:",data.nickName)
    this.setData({
      "user.username": data.nickName,
      "userInfo.username": data.nickName
    });
  },
  handleReturnPhone: function(data) { //处理从手机号界面返回的
    console.log("username:",data.nickName)
    this.setData({
      "user.phoneNumber": data.nickName,
      "userInfo.phoneNumber": data.nickName
    });
  },
  saveUser(){
    console.log("获取到的用户数据位：",this.data.user)

        // 获取小程序实例
        const app = getApp();
        // 获取全局变量
        const globalUrl = app.globalData.globalUrl;
        const userInfo = wx.getStorageSync('UserData');
        wx.request({
          url: globalUrl+'/user/updateuser',
          method: 'POST',
          header: {
            "token": userInfo.token,
          },
          data: this.data.user,
          success: (response) => {
            if(response.data.code === 200){ //成功添加地址列表到数据库
              console.log("成功执行保存信息功能");
              console.log(response.data.data)
              wx.showToast({
                title: '保存成功',
                icon: 'none',
                success: function() {
                  // 在成功回调函数中执行返回操作
                  setTimeout(function() {
                    wx.navigateBack({
                      delta: 1 // 返回两级页面
                    });
                  }, 1000);
                }
              })       
            }else if(response.data.code === 401){
              wx.showToast({
                title: '您还没有登录，请先登录',
                icon: 'none'
              })
            }else{
              wx.showToast({
                title: '您的网络有差异请稍后尝试！',
                icon: 'none'
              })
            }
          },
        });

  },




})
